1
การจับคู่ทางคณิตศาสตร์และการจำลองข้อมูล
MATH002Lesson 3
00:00
การจับคู่ทางคณิตศาสตร์และการจำลองข้อมูลทำหน้าที่เป็นสะพานเชื่อมระหว่างทฤษฎีเซตที่นามธรรมกับความเป็นจริงทางคอมพิวเตอร์ ภายใต้กรอบนี้ อัลกอริธึม อัลกอริธึม ดำเนินการเป็นการเปลี่ยนแปลงอย่างเป็นทางการและแน่นอน โดยที่ข้อมูลนำเข้าที่มีโครงสร้างจะถูกประมวลผลผ่านคำสั่งที่แม่นยำเพื่อให้ได้ผลลัพธ์ที่ถูกต้อง ซึ่งสร้างรากฐานเชิงตรรกะสำหรับสถาปัตยกรรมซอฟต์แวร์และฐานข้อมูลทั้งหมด

คุณสมบัติของอัลกอริธึม

อัลกอริธึมคือวิธีการแก้ปัญหาแบบขั้นตอนต่อเนื่อง ซึ่งมีลักษณะเด่นด้วยเสาหลักสำคัญ 7 ประการ:

  • อินพุต: อัลกอริธึมรับข้อมูลจากชุดที่กำหนดไว้
  • เอาต์พุต: อัลกอริธึมสร้างผลลัพธ์ (คำตอบ) จากชุดที่กำหนดไว้
  • ความแม่นยำ: แต่ละขั้นตอนถูกระบุอย่างชัดเจนโดยไม่มีข้อสงสัย
  • ความแน่นอน: ผลลัพธ์ระหว่างกลางมีค่าเฉพาะเจาะจง และถูกกำหนดเพียงจากอินพุตและขั้นตอนก่อนหน้าเท่านั้น
  • ความจำกัด: กระบวนการจะสิ้นสุดลงหลังจากคำสั่งจำนวนจำกัด
  • ความถูกต้อง: ผลลัพธ์แก้ปัญหาตามที่ตั้งใจไว้
  • ความทั่วไป: ขั้นตอนสามารถนำไปใช้กับกลุ่มอินพุตทั้งหมด ไม่ใช่แค่กรณีเดียว

อัลกอริธึม 4.1.1: การหาค่ามากสุดของเลขสามตัว

ความสัมพันธ์แบบสามตัวนี้แสดงถึงความแม่นยำและความแน่นอน ไม่ว่าค่าของ $a, b,$ และ $c$ จะเป็นเท่าใด ขั้นตอนก็จะดำเนินไปตามเส้นทางตรรกะที่แน่นอน

การติดตามรหัสจำลอง
max3(a, b, c) {
large = a
หาก (b > large) large = b
หาก (c > large) large = c
คืนค่า large
}

การจำลองข้อมูลและค่าคงที่ในลูป

ในโครงสร้างข้อมูลที่ซับซ้อนยิ่งขึ้น เช่น ลำดับ ($s_1, ..., s_n$) เราจะใช้ อัลกอริธึม 4.1.2. เพื่อให้มั่นใจว่าอัลกอริธึมนี้ถูกต้อง เราอาศัยการอุปนัยและแนวคิดของ ค่าคงที่ในลูป.

อัลกอริธึม 4.1.2: การหาค่ามากสุดในลำดับ
max(s, n) {
large = s_1
สำหรับ i = 2 ถึง n
หาก (s_i > large)
large = s_i
คืนค่า large
}

ค่าคงที่ในลูป: "large คือค่ามากที่สุดในลำดับย่อย $s_1, ..., s_i$" คุณสมบัตินี้จะยังคงเป็นจริงในทุกการวนซ้ำ ซึ่งพิสูจน์ความถูกต้องผ่านการอุปนัย

🎯 หลักการหลัก: ความถูกต้องของการจับคู่
ฟังก์ชันทางคณิตศาสตร์ที่ถูกต้องต้องการให้ทุกสมาชิกในโดเมนจับคู่กับ เพียงหนึ่งเดียว สมาชิกในโคโดเมน เส้นลูกศรที่ขาดหายไปหรือเส้นลูกศรหลายเส้นจากแหล่งเดียวกันจะทำให้สถานะของฟังก์ชันไม่ถูกต้อง สะท้อนว่าทำไมอัลกอริธึมที่ไม่แน่นอนหรือไม่ครบถ้วนจึงล้มเหลวในทางปฏิบัติ